In a conventional rollback process or method, data of a write access destination in a memory is normally saved at every writing or write access to the memory. At the rollback process, the saved data is re-written in the memory with LIFO (Last In First Out) manner. Multiple times of write accesses may be performed or overlapped with respect to a certain memory address. In such a case, data in the certain address are saved in multiple times and the saved data are re-written in the multiple times. Accordingly, such a rollback process causes a problem that transfer of data not essentially needing re-writing increases a time needed for restoring data.
To solve such a problem, some techniques are proposed for reducing the overlapped data in the saving memory. For example, in Patent Document 1, it is determined whether a database file is already outputted to a journal file in a block unit or partial unit of the block unit. Only when the database file is determined to be not outputted, the database file is outputted to the journal file. This configuration reduces overlapped saved data generated in the saving memory.
For instance, in Patent document 2, when an update process is executed to a certain data item in a database, it is checked whether there is any log information recording another update process previously executed to data of the certain data item. When the log information is already present, recording log information is stopped. Thus, generation of the overlapped or redundant saved data can be decreased.                Patent Document 1: JP-H2-257228 A        Patent document 2: JP-H1-53239 A        
The technologies in Patent Document 1 and Patent document 2 mentioned above can surely reduce overlapped data in the saving memory or saving data. There is, however, no disclosure of a detailed determination method or whether data has been already saved. That is, the following is not specifically disclosed: how to save data and record it; how to make a determination as to whether data matches with the already saved data at subsequent data saving. If the method of the determination is complicated, the determination may require a time and cause a delay of the original process. Moreover, the determination may require a significant time when saving is executed with respect to a memory address unit. The effective speed of an application program executed on such a memory is significantly decreased compared with that of a system without considering nor including a rollback process.